In one conventional method for measuring packet loss, a traffic generator generates test packets at one end of a network path, and a plurality of probes located at different locations along the network path count the test packets as they pass. If there is no packet loss, the number of test packets counted, i.e., the packet count, at each probe should equal the number of test packets generated. By comparing the packet counts to the number of test packets generated, the number of lost test packets, i.e., the packet loss, may be measured. For example, if 100 test packets are generated at one end of the network path, and first and second probes along the network path each count 100 test packets, but a third probe along the network path counts 99 test packets, then 1 packet was lost between the second and third probes.
An out-of-band request packet is sent to each probe in order to obtain the packet counts. However, if the test packets are generated continuously, different numbers of test packets will have passed each probe at any point in time because the probes are located at different locations along the network path. Even if they are obtained at the same point in time, the packet counts will be out of sync, i.e., will not correspond to the same test packets, and cannot be directly compared. Moreover, because the packet counts are requested out-of-band, the packet counts are further out of sync. In order to ensure that the packet counts at each probe are synchronized, i.e., correspond to the same test packets, the test packets are generated in bursts separated by quiet periods, rather than being generated continuously. The packet counts at each probe are requested after the burst of test packets has passed all of the probes and are then compared to measure packet loss. Unfortunately, this method does not provide real-time measurements. Moreover, the method is limited to active measurements using generated test packets, and requires the use of quiet periods in which measurements are not possible.
Other conventional methods have been developed which overcome some of these problems. In a method described in U.S. Pat. No. 8,270,309 to Jones, issued on Sep. 18, 2012, which is incorporated herein by reference, a modified internet control message protocol (ICMP) packet is inserted into an existing flow of packets and is used to latch packets counts for the flow at first and second reference nodes. By comparing the latched packet counts, packet loss between the first and second reference nodes is measured. In a method described in U.S. Pat. No. 8,451,734 to Cociglio et al., issued on May 28, 2013, which is incorporated herein by reference, different blocks of packets in a flow are marked with different features at a transmitting node. Packets marked with a same feature are counted at the transmitting node and at a receiving node to provide packet counts corresponding to a same block of packets. By comparing the packet counts, packet loss between the transmitting and receiving nodes is measured. Unfortunately, both of these methods require altering existing network traffic, by inserting additional packets or by marking packets, respectively.